<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html"/>
	<xsl:template match="text()"/>
	<xsl:template match="xlive">
		<html>
			<head></head>
			<body>
			<xsl:apply-templates/>
			</body>
		</html>
	</xsl:template>
	<xsl:template match="xlive/return">
		<xsl:apply-templates/>
	</xsl:template>
	<xsl:template match="return/*[return]">
		<xsl:value-of select="."/>
		<ul>
			<xsl:apply-templates/>
		</ul>
	</xsl:template>
	<xsl:template match="return/*">
		<li>&lt;<span><xsl:value-of select="name(.)" /></span>
		<xsl:for-each select="./@*">
			<xsl:text> </xsl:text>
			<xsl:value-of select="local-name(.)"/>
			<xsl:text>="</xsl:text>
			<xsl:value-of select="." />
			<xsl:text>" </xsl:text>
		</xsl:for-each>
		<xsl:choose>
			<xsl:when test="boolean(./text()) or boolean((child::*)[1])">
				<xsl:text>&gt;</xsl:text>
				<xsl:value-of select="./text()"/>
				<xsl:if test="child::*">
					<ul>
					 	<xsl:apply-templates select="child::*" />
					</ul>
				</xsl:if>
				<xsl:text>&lt;/</xsl:text>
				<xsl:value-of select="name(.)" />
				<xsl:text>&gt;</xsl:text>
			</xsl:when>
			<xsl:otherwise>
				<xsl:text>/&gt;</xsl:text>
			</xsl:otherwise>
		</xsl:choose>
		</li>
	</xsl:template>
</xsl:stylesheet>
